package com.ideaaedi.zoo.diy.artifact.openfeign.properties.nested;

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

/**
 * feign发送请求时，往请求头中写入的信息
 */
@Data
public class HeaderTrans {
    
    /**
     * 请求头
     */
    @NotBlank
    private String header;
    
    /**
     * 请求头的值（或从source取值的键）
     */
    @NotBlank
    private String value;
    
    /**
     * 请求头的值来源（存储源）
     */
    @NotNull(message = "value source cannot be null.")
    private HeaderValueSource source;
    
    /**
     * 是否对放进请求头中的值进行url-encode
     */
    private boolean encodeValue = false;
    
    /**
     * 当value不存在时，默认值
     */
    private String defaultValue;
}
